// c++拷贝构造函数，默认存在的，可直接使用
#include <iostream>
using namespace std;

class A
{
public:
    int x;

    //普通构造函数
    A(int x)
    {
        this->x = x;
    }

    // //拷贝构造函数,默认存在的，可以直接使用
    // A(const A &rh)
    // {
    //     *this = rh;
    // }

    void show()
    {
        cout << x << endl;
    }
};

int main()
{
    A a(1);//调用普通构造函数

    A b(a);//调用拷贝构造函数
    A b = a;//与上面语句完全等价，但不是赋值操作，与赋值运算符函数无关，是存粹的拷贝构造的另一种方式

    a.show();
    b.show();

    return 0;
}